home *** CD-ROM | disk | FTP | other *** search
-
- program test {also untested};
-
- var
- testbyte: byte;
-
- function testbit(testbyte,bit:byte):boolean; assembler;
- asm
- mov cl,bit
- mov ah,1
- shl ah,cl
- mov al,testbyte
- and al,ah
- end;
-
- procedure setbit(var testbyte:byte; bit:byte); assembler;
- asm
- mov cl,bit
- mov al,1
- shl al,cl
- les di,[testbyte]
- or [es:di],al
- end;
-
- procedure clearbit(var testbyte:byte; bit:byte); assembler;
- asm
- mov cl,bit
- mov al,1
- shl al,cl
- not al
- les di,[testbyte]
- and [es:di],al
- end;
-
- begin
- testbyte := 0;
- setbit(testbyte,2);
- setbit(testbyte,5);
- if testbit(testbyte,2) then writeln('2 is ON');
- if not testbit(testbyte,3) then writeln('3 is OFF');
- end.
-